<template>
</template>

<script>
	export default {
		data() {
			return {
				timer: null,
				timer1: null,
			}
		},
		onShow() {
			let _this = this;
			this.timer = setTimeout(() => {
				// _this.wxlogin();
				_this.getLocationPermission()
			}, 1000)
			
			
			
		},
		onHide() {
			console.log(111111111)
			if (this.timer) {
				clearTimeout(this.timer)
				this.timer = null;
			}
			if (this.timer1) {
				clearTimeout(this.timer1)
				this.timer1 = null;
			}
		},
		onUnload() {
			// 页面卸载时清除定时器  
			if (this.timer) {
				clearTimeout(this.timer)
				this.timer = null;
			}
			if (this.timer1) {
				clearTimeout(this.timer1)
				this.timer1 = null;
			}
		},
		methods: {
			getLocationPermission() {
				let _this = this;
				uni.authorize({
					scope: 'scope.userLocation',
					success() {
						console.log('位置权限获取成功');
						_this.wxlogin();
						// 权限获取成功，可以进行定位等操作
						// _this.showSettingDialog();
					},
					fail() {
						// 用户拒绝了位置权限请求
						_this.showSettingDialog();
					}
				});
			},
			showSettingDialog() {
				let _this = this;
				uni.showModal({
					title: '提示',
					content: '需要获取您的位置信息，请到设置中开启权限',
					confirmText: '设置',
					success(res) {
						if (res.confirm) {
							// 引导用户到设置页面
							// uni.openSetting();
							uni.openSetting({  
							    success: function (res) {  
							        if (res.authSetting['scope.userLocation']) {  
							            // 用户已授权地理位置权限  
							            console.log('用户已授权地理位置权限');  
										_this.wxlogin()
							            // 执行需要地理位置权限的操作，如获取用户位置  
							        } else {  
							            // 用户未授权地理位置权限  
							            console.log('用户未授权地理位置权限');  
										_this.showSettingDialog();
							            // 可以引导用户开启权限，或者在不满足权限的情况下禁用某些功能  
							        }  
							    },  
							    fail: function (err) {  
							        console.error('打开设置页失败', err);  
							    }  
							});
						} else {
							_this.showSettingDialog();
						}
					},
					fail() {
						
					}
				});
			},
			wxlogin() {
				var _this = this;
				uni.removeStorageSync('token');
				uni.removeStorageSync('clientID')
				uni.login({
					provider: 'weixin',
					success: function(loginRes) {
						console.log(loginRes)
						// return;
						// 在这里处理登录成功后的逻辑，如获取用户信息等  
						_this.$http({
							url: _this.$myApi.xcxLogin,
							method: 'POST',
							hideLoading: true,
							data: {
								"xcxCode": loginRes.code,
								"clientId": "25e5f3649dded6a3345ef8ee6359cda0",
								"grantType": "xcx",
								"appid": "wx767edd216cfa44e2"
							},
							success: res => {

								// console.log('是否显示----------', res)
								uni.setStorage({
									key: 'isLoginShow',
									data: res.data,
									success: function() {}
								});
								uni.removeStorageSync('openId');
								// 存取token
								uni.setStorageSync('token', 'Bearer ' + res.data
									.access_token)
								uni.setStorageSync('clientID', res.data
									.client_id)
								uni.setStorageSync('openId', res.data)

								if (res.code == 200) {
									if (res.data.phoneFlag == 0) {
										uni.switchTab({
											url: '/pages/newMy/index'
										})
										uni.removeStorageSync('userSInfo');
										uni.setStorageSync('userSInfo', 1);
									} else {
										// uni.switchTab({
										// 	url: '/pages/newMy/index?type=1'
										// })
										// uni.removeStorageSync('userSInfo');
										// uni.setStorageSync('userSInfo', 1);
										_this.timer1 = setTimeout(() => {
											uni.switchTab({
												url: '/pages/myHome/index'
											});
										}, 200)
									}

								}

							},
							fail: err => {
								// console.log(err, 3333333333)
							},
							complete: e => {
								// uni.navigateTo({
								// 	url: '/pages/orderManagement/index'
								// })
							}
						})
					}
				});
			}

		}
	}
</script>

<style>
</style>